home *** CD-ROM | disk | FTP | other *** search
/ Amiga Format CD 7 / Amiga Format AFCD07 (Dec 1996, Issue 91).iso / serious / shareware / programming / aros / include / clib / dos_protos.h < prev    next >
C/C++ Source or Header  |  1996-09-12  |  24KB  |  718 lines

  1. #ifndef CLIB_DOS_PROTOS_H
  2. #define CLIB_DOS_PROTOS_H
  3.  
  4. #ifndef AROS_LIBCALL_H
  5. #   include <aros/libcall.h>
  6. #endif
  7. #ifndef DOS_DOS_H
  8. #   include <dos/dos.h>
  9. #endif
  10.  
  11. /*
  12.     Prototypes
  13. */
  14. __AROS_LP2(BOOL, AddBuffers,
  15.     __AROS_LPA(STRPTR, devicename, D1),
  16.     __AROS_LPA(LONG,   numbuffers, D2),
  17.     struct DosLibrary *, DOSBase, 122, Dos)
  18. #define AddBuffers(devicename, numbuffers) \
  19.     __AROS_LC2(BOOL, AddBuffers, \
  20.     __AROS_LCA(STRPTR, devicename, D1), \
  21.     __AROS_LCA(LONG,   numbuffers, D2), \
  22.     struct DosLibrary *, DOSBase, 122, Dos)
  23.  
  24. __AROS_LP1(LONG, AddDosEntry,
  25.     __AROS_LPA(struct DosList *, dlist, D1),
  26.     struct DosLibrary *, DOSBase, 113, Dos)
  27. #define AddDosEntry(dlist) \
  28.     __AROS_LC1(LONG, AddDosEntry, \
  29.     __AROS_LCA(struct DosList *, dlist, D1), \
  30.     struct DosLibrary *, DOSBase, 113, Dos)
  31.  
  32. __AROS_LP2(APTR, AllocDosObject,
  33.     __AROS_LPA(ULONG,            type, D1),
  34.     __AROS_LPA(struct TagItem *, tags, D2),
  35.     struct DosLibrary *, DOSBase, 38, Dos)
  36. #define AllocDosObject(type, tags) \
  37.     __AROS_LC2(APTR, AllocDosObject, \
  38.     __AROS_LCA(ULONG,            type, D1), \
  39.     __AROS_LCA(struct TagItem *, tags, D2), \
  40.     struct DosLibrary *, DOSBase, 38, Dos)
  41.  
  42. __AROS_LP2(BOOL, AssignLock,
  43.     __AROS_LPA(STRPTR, name, D1),
  44.     __AROS_LPA(BPTR,   lock, D2),
  45.     struct DosLibrary *, DOSBase, 102, Dos)
  46. #define AssignLock(name, lock) \
  47.     __AROS_LC2(BOOL, AssignLock, \
  48.     __AROS_LCA(STRPTR, name, D1), \
  49.     __AROS_LCA(BPTR,   lock, D2), \
  50.     struct DosLibrary *, DOSBase, 102, Dos)
  51.  
  52. __AROS_LP1(struct DosList *, AttemptLockDosList,
  53.     __AROS_LPA(ULONG, flags, D1),
  54.     struct DosLibrary *, DOSBase, 111, Dos)
  55. #define AttemptLockDosList(flags) \
  56.     __AROS_LC1(struct DosList *, AttemptLockDosList, \
  57.     __AROS_LCA(ULONG, flags, D1), \
  58.     struct DosLibrary *, DOSBase, 111, Dos)
  59.  
  60. __AROS_LP3(BOOL, ChangeMode,
  61.     __AROS_LPA(ULONG, type,    D1),
  62.     __AROS_LPA(BPTR,  object,  D2),
  63.     __AROS_LPA(ULONG, newmode, D3),
  64.     struct DosLibrary *, DOSBase, 75, Dos)
  65. #define ChangeMode(type, object, newmode) \
  66.     __AROS_LC3(BOOL, ChangeMode, \
  67.     __AROS_LCA(ULONG, type,    D1), \
  68.     __AROS_LCA(BPTR,  object,  D2), \
  69.     __AROS_LCA(ULONG, newmode, D3), \
  70.     struct DosLibrary *, DOSBase, 75, Dos)
  71.  
  72. __AROS_LP0(struct CommandLineInterface *, Cli,
  73.     struct DosLibrary *, DOSBase, 82, Dos)
  74. #define Cli() \
  75.     __AROS_LC0(struct CommandLineInterface *, Cli, \
  76.     struct DosLibrary *, DOSBase, 82, Dos)
  77.  
  78. __AROS_LP1(BOOL, Close,
  79.     __AROS_LPA(BPTR, file, D1),
  80.     struct DosLibrary *, DOSBase, 6, Dos)
  81. #define Close(file) \
  82.     __AROS_LC1(BOOL, Close, \
  83.     __AROS_LCA(BPTR, file, D1), \
  84.     struct DosLibrary *, DOSBase, 6, Dos)
  85.  
  86. __AROS_LP1(BOOL, UnLock,
  87.     __AROS_LPA(BPTR, lock, D1),
  88.     struct DosLibrary *, DOSBase, 15, Dos)
  89. #define UnLock(lock) \
  90.     __AROS_LC1(BOOL, UnLock, \
  91.     __AROS_LCA(BPTR, lock, D1), \
  92.     struct DosLibrary *, DOSBase, 15, Dos)
  93.  
  94. __AROS_LP1(BPTR, CreateDir,
  95.     __AROS_LPA(STRPTR, name, D1),
  96.     struct DosLibrary *, DOSBase, 20, Dos)
  97. #define CreateDir(name) \
  98.     __AROS_LC1(BPTR, CreateDir, \
  99.     __AROS_LCA(STRPTR, name, D1), \
  100.     struct DosLibrary *, DOSBase, 20, Dos)
  101.  
  102. __AROS_LP1(struct Process *, CreateNewProc,
  103.     __AROS_LPA(struct TagItem *, tags, D1),
  104.     struct DosLibrary *, DOSBase, 83, Dos)
  105. #define CreateNewProc(tags) \
  106.     __AROS_LC1(struct Process *, CreateNewProc, \
  107.     __AROS_LCA(struct TagItem *, tags, D1), \
  108.     struct DosLibrary *, DOSBase, 83, Dos)
  109.  
  110. __AROS_LP1(BPTR, CurrentDir,
  111.     __AROS_LPA(BPTR, lock, D1),
  112.     struct DosLibrary *, DOSBase, 21, Dos)
  113. #define CurrentDir(lock) \
  114.     __AROS_LC1(BPTR, CurrentDir, \
  115.     __AROS_LCA(BPTR, lock, D1), \
  116.     struct DosLibrary *, DOSBase, 21, Dos)
  117.  
  118. __AROS_LP1(BOOL, DateToStr,
  119.     __AROS_LPA(struct DateTime *, datetime, D1),
  120.     struct DosLibrary *, DOSBase, 124, Dos)
  121. #define DateToStr(datetime) \
  122.     __AROS_LC1(BOOL, DateToStr, \
  123.     __AROS_LCA(struct DateTime *, datetime, D1), \
  124.     struct DosLibrary *, DOSBase, 124, Dos)
  125.  
  126. __AROS_LP1(void, Delay,
  127.     __AROS_LPA(ULONG, timeout, D1),
  128.     struct DosLibrary *, DOSBase, 33, Dos)
  129. #define Delay(timeout) \
  130.     __AROS_LC1(void, Delay, \
  131.     __AROS_LCA(ULONG, timeout, D1), \
  132.     struct DosLibrary *, DOSBase, 33, Dos)
  133.  
  134. __AROS_LP1(BOOL, DeleteFile,
  135.     __AROS_LPA(STRPTR, name, D1),
  136.     struct DosLibrary *, DOSBase, 12, Dos)
  137. #define DeleteFile(name) \
  138.     __AROS_LC1(BOOL, DeleteFile, \
  139.     __AROS_LCA(STRPTR, name, D1), \
  140.     struct DosLibrary *, DOSBase, 12, Dos)
  141.  
  142. __AROS_LP1(BPTR, DupLock,
  143.     __AROS_LPA(BPTR, lock, D1),
  144.     struct DosLibrary *, DOSBase, 16, Dos)
  145. #define DupLock(lock) \
  146.     __AROS_LC1(BPTR, DupLock, \
  147.     __AROS_LCA(BPTR, lock, D1), \
  148.     struct DosLibrary *, DOSBase, 16, Dos)
  149.  
  150. __AROS_LP1(BPTR, DupLockFromFH,
  151.     __AROS_LPA(BPTR, fh, D1),
  152.     struct DosLibrary *, DOSBase, 62, Dos)
  153. #define DupLockFromFH(fh) \
  154.     __AROS_LC1(BPTR, DupLockFromFH, \
  155.     __AROS_LCA(BPTR, fh, D1), \
  156.     struct DosLibrary *, DOSBase, 62, Dos)
  157.  
  158. __AROS_LP5(BOOL, ExAll,
  159.     __AROS_LPA(BPTR,                  lock,    D1),
  160.     __AROS_LPA(struct ExAllData *,    buffer,  D2),
  161.     __AROS_LPA(LONG,                  size,    D3),
  162.     __AROS_LPA(LONG,                  data,    D4),
  163.     __AROS_LPA(struct ExAllControl *, control, D5),
  164.     struct DosLibrary *, DOSBase, 72, Dos)
  165. #define ExAll(lock, buffer, size, data, control) \
  166.     __AROS_LC5(BOOL, ExAll, \
  167.     __AROS_LCA(BPTR,                  lock,    D1), \
  168.     __AROS_LCA(struct ExAllData *,    buffer,  D2), \
  169.     __AROS_LCA(LONG,                  size,    D3), \
  170.     __AROS_LCA(LONG,                  data,    D4), \
  171.     __AROS_LCA(struct ExAllControl *, control, D5), \
  172.     struct DosLibrary *, DOSBase, 72, Dos)
  173.  
  174. __AROS_LP5(void, ExAllEnd,
  175.     __AROS_LPA(BPTR,                  lock,    D1),
  176.     __AROS_LPA(struct ExAllData *,    buffer,  D2),
  177.     __AROS_LPA(LONG,                  size,    D3),
  178.     __AROS_LPA(LONG,                  data,    D4),
  179.     __AROS_LPA(struct ExAllControl *, control, D5),
  180.     struct DosLibrary *, DOSBase, 165, Dos)
  181. #define ExAllEnd(lock, buffer, size, data, control) \
  182.     __AROS_LC5(void, ExAllEnd, \
  183.     __AROS_LCA(BPTR,                  lock,    D1), \
  184.     __AROS_LCA(struct ExAllData *,    buffer,  D2), \
  185.     __AROS_LCA(LONG,                  size,    D3), \
  186.     __AROS_LCA(LONG,                  data,    D4), \
  187.     __AROS_LCA(struct ExAllControl *, control, D5), \
  188.     struct DosLibrary *, DOSBase, 165, Dos)
  189.  
  190. __AROS_LP2(BOOL, Examine,
  191.     __AROS_LPA(BPTR,                   lock, D1),
  192.     __AROS_LPA(struct FileInfoBlock *, fib,  D2),
  193.     struct DosLibrary *, DOSBase, 17, Dos)
  194. #define Examine(lock, fib) \
  195.     __AROS_LC2(BOOL, Examine, \
  196.     __AROS_LCA(BPTR,                   lock, D1), \
  197.     __AROS_LCA(struct FileInfoBlock *, fib,  D2), \
  198.     struct DosLibrary *, DOSBase, 17, Dos)
  199.  
  200. __AROS_LP2(BOOL, ExamineFH,
  201.     __AROS_LPA(BPTR                  , fh, D1),
  202.     __AROS_LPA(struct FileInfoBlock *, fib, D2),
  203.     struct DosLibrary *, DOSBase, 65, Dos)
  204. #define ExamineFH(fh, fib) \
  205.     __AROS_LC2(BOOL, ExamineFH, \
  206.     __AROS_LCA(BPTR                  , fh, D1), \
  207.     __AROS_LCA(struct FileInfoBlock *, fib, D2), \
  208.     struct DosLibrary *, DOSBase, 65, Dos)
  209.  
  210. __AROS_LP1(LONG, FGetC,
  211.     __AROS_LPA(BPTR, file, D1),
  212.     struct DosLibrary *, DOSBase, 51, Dos)
  213. #define FGetC(file) \
  214.     __AROS_LC1(LONG, FGetC, \
  215.     __AROS_LCA(BPTR, file, D1), \
  216.     struct DosLibrary *, DOSBase, 51, Dos)
  217.  
  218. __AROS_LP1(STRPTR, FilePart,
  219.     __AROS_LPA(STRPTR, path, D1),
  220.     struct DosLibrary *, DOSBase, 145, Dos)
  221. #define FilePart(path) \
  222.     __AROS_LC1(STRPTR, FilePart, \
  223.     __AROS_LCA(STRPTR, path, D1), \
  224.     struct DosLibrary *, DOSBase, 145, Dos)
  225.  
  226. __AROS_LP2(LONG, FindArg,
  227.     __AROS_LPA(STRPTR, template, D1),
  228.     __AROS_LPA(STRPTR, keyword,  D2),
  229.     struct DosLibrary *, DOSBase, 134, Dos)
  230. #define FindArg(template, keyword) \
  231.     __AROS_LC2(LONG, FindArg, \
  232.     __AROS_LCA(STRPTR, template, D1), \
  233.     __AROS_LCA(STRPTR, keyword,  D2), \
  234.     struct DosLibrary *, DOSBase, 134, Dos)
  235.  
  236. __AROS_LP3(struct DosList *, FindDosEntry,
  237.     __AROS_LPA(struct DosList *, dlist, D1),
  238.     __AROS_LPA(STRPTR,           name,  D2),
  239.     __AROS_LPA(ULONG,            flags, D3),
  240.     struct DosLibrary *, DOSBase, 114, Dos)
  241. #define FindDosEntry(dlist, name, flags) \
  242.     __AROS_LC3(struct DosList *, FindDosEntry, \
  243.     __AROS_LCA(struct DosList *, dlist, D1), \
  244.     __AROS_LCA(STRPTR,           name,  D2), \
  245.     __AROS_LCA(ULONG,            flags, D3), \
  246.     struct DosLibrary *, DOSBase, 114, Dos)
  247.  
  248. __AROS_LP1(LONG, Flush,
  249.     __AROS_LPA(BPTR, file, D1),
  250.     struct DosLibrary *, DOSBase, 60, Dos)
  251. #define Flush(file) \
  252.     __AROS_LC1(LONG, Flush, \
  253.     __AROS_LCA(BPTR, file, D1), \
  254.     struct DosLibrary *, DOSBase, 60, Dos)
  255.  
  256. __AROS_LP3(BOOL, Format,
  257.     __AROS_LPA(STRPTR, devicename, D1),
  258.     __AROS_LPA(STRPTR, volumename, D2),
  259.     __AROS_LPA(ULONG,  dostype,    D3),
  260.     struct DosLibrary *, DOSBase, 119, Dos)
  261. #define Format(devicename, volumename, dostype) \
  262.     __AROS_LC3(BOOL, Format, \
  263.     __AROS_LCA(STRPTR, devicename, D1), \
  264.     __AROS_LCA(STRPTR, volumename, D2), \
  265.     __AROS_LCA(ULONG,  dostype,    D3), \
  266.     struct DosLibrary *, DOSBase, 119, Dos)
  267.  
  268. __AROS_LP2(LONG, FPutC,
  269.     __AROS_LPA(BPTR, file,      D1),
  270.     __AROS_LPA(LONG, character, D2),
  271.     struct DosLibrary *, DOSBase, 52, Dos)
  272. #define FPutC(file, character) \
  273.     __AROS_LC2(LONG, FPutC, \
  274.     __AROS_LCA(BPTR, file,      D1), \
  275.     __AROS_LCA(LONG, character, D2), \
  276.     struct DosLibrary *, DOSBase, 52, Dos)
  277.  
  278. __AROS_LP2(LONG, FPuts,
  279.     __AROS_LPA(BPTR,   file,   D1),
  280.     __AROS_LPA(STRPTR, string, D2),
  281.     struct DosLibrary *, DOSBase, 56, Dos)
  282. #define FPuts(file, string) \
  283.     __AROS_LC2(LONG, FPuts, \
  284.     __AROS_LCA(BPTR,   file,   D1), \
  285.     __AROS_LCA(STRPTR, string, D2), \
  286.     struct DosLibrary *, DOSBase, 56, Dos)
  287.  
  288. __AROS_LP1(void, FreeArgs,
  289.     __AROS_LPA(struct RDArgs *, args, D1),
  290.     struct DosLibrary *, DOSBase, 143, Dos)
  291. #define FreeArgs(args) \
  292.     __AROS_LC1(void, FreeArgs, \
  293.     __AROS_LCA(struct RDArgs *, args, D1), \
  294.     struct DosLibrary *, DOSBase, 143, Dos)
  295.  
  296. __AROS_LP1(void, FreeDosEntry,
  297.     __AROS_LPA(struct DosList *, dlist, D1),
  298.     struct DosLibrary *, DOSBase, 117, Dos)
  299. #define FreeDosEntry(dlist) \
  300.     __AROS_LC1(void, FreeDosEntry, \
  301.     __AROS_LCA(struct DosList *, dlist, D1), \
  302.     struct DosLibrary *, DOSBase, 117, Dos)
  303.  
  304. __AROS_LP2(void, FreeDosObject,
  305.     __AROS_LPA(ULONG, type, D1),
  306.     __AROS_LPA(APTR,  ptr,  D2),
  307.     struct DosLibrary *, DOSBase, 39, Dos)
  308. #define FreeDosObject(type, ptr) \
  309.     __AROS_LC2(void, FreeDosObject, \
  310.     __AROS_LCA(ULONG, type, D1), \
  311.     __AROS_LCA(APTR,  ptr,  D2), \
  312.     struct DosLibrary *, DOSBase, 39, Dos)
  313.  
  314. __AROS_LP0(STRPTR, GetArgStr,
  315.     struct DosLibrary *, DOSBase, 89, Dos)
  316. #define GetArgStr() \
  317.     __AROS_LC0(STRPTR, GetArgStr, \
  318.     struct DosLibrary *, DOSBase, 89, Dos)
  319.  
  320. __AROS_LP0(BPTR, Input,
  321.     struct DosLibrary *, DOSBase, 9, Dos)
  322. #define Input() \
  323.     __AROS_LC0(BPTR, Input, \
  324.     struct DosLibrary *, DOSBase, 9, Dos)
  325.  
  326. __AROS_LP0(LONG, IoErr,
  327.     struct DosLibrary *, DOSBase, 22, Dos)
  328. #define IoErr() \
  329.     __AROS_LC0(LONG, IoErr, \
  330.     struct DosLibrary *, DOSBase, 22, Dos)
  331.  
  332. __AROS_LP1(BOOL, IsFileSystem,
  333.     __AROS_LPA(STRPTR, devicename, D1),
  334.     struct DosLibrary *, DOSBase, 118, Dos)
  335. #define IsFileSystem(devicename) \
  336.     __AROS_LC1(BOOL, IsFileSystem, \
  337.     __AROS_LCA(STRPTR, devicename, D1), \
  338.     struct DosLibrary *, DOSBase, 118, Dos)
  339.  
  340. __AROS_LP1(BOOL, IsInteractive,
  341.     __AROS_LPA(BPTR, file, D1),
  342.     struct DosLibrary *, DOSBase, 36, Dos)
  343. #define IsInteractive(file) \
  344.     __AROS_LC1(BOOL, IsInteractive, \
  345.     __AROS_LCA(BPTR, file, D1), \
  346.     struct DosLibrary *, DOSBase, 36, Dos)
  347.  
  348. __AROS_LP1(BPTR, LoadSeg,
  349.     __AROS_LPA(STRPTR, name, D1),
  350.     struct DosLibrary *, DOSBase, 25, Dos)
  351. #define LoadSeg(name) \
  352.     __AROS_LC1(BPTR, LoadSeg, \
  353.     __AROS_LCA(STRPTR, name, D1), \
  354.     struct DosLibrary *, DOSBase, 25, Dos)
  355.  
  356. __AROS_LP2(BPTR, Lock,
  357.     __AROS_LPA(STRPTR, name,       D1),
  358.     __AROS_LPA(LONG,   accessMode, D2),
  359.     struct DosLibrary *, DOSBase, 14, Dos)
  360. #define Lock(name, accessMode) \
  361.     __AROS_LC2(BPTR, Lock, \
  362.     __AROS_LCA(STRPTR, name,       D1), \
  363.     __AROS_LCA(LONG,   accessMode, D2), \
  364.     struct DosLibrary *, DOSBase, 14, Dos)
  365.  
  366. __AROS_LP1(struct DosList *, LockDosList,
  367.     __AROS_LPA(ULONG, flags, D1),
  368.     struct DosLibrary *, DOSBase, 109, Dos)
  369. #define LockDosList(flags) \
  370.     __AROS_LC1(struct DosList *, LockDosList, \
  371.     __AROS_LCA(ULONG, flags, D1), \
  372.     struct DosLibrary *, DOSBase, 109, Dos)
  373.  
  374. __AROS_LP2(struct DosList *, MakeDosEntry,
  375.     __AROS_LPA(STRPTR, name, D1),
  376.     __AROS_LPA(LONG,   type, D2),
  377.     struct DosLibrary *, DOSBase, 116, Dos)
  378. #define MakeDosEntry(name, type) \
  379.     __AROS_LC2(struct DosList *, MakeDosEntry, \
  380.     __AROS_LCA(STRPTR, name, D1), \
  381.     __AROS_LCA(LONG,   type, D2), \
  382.     struct DosLibrary *, DOSBase, 116, Dos)
  383.  
  384. __AROS_LP2(BOOL, MatchPattern,
  385.     __AROS_LPA(STRPTR, pat, D1),
  386.     __AROS_LPA(STRPTR, str, D2),
  387.     struct DosLibrary *, DOSBase, 141, Dos)
  388. #define MatchPattern(pat, str) \
  389.     __AROS_LC2(BOOL, MatchPattern, \
  390.     __AROS_LCA(STRPTR, pat, D1), \
  391.     __AROS_LCA(STRPTR, str, D2), \
  392.     struct DosLibrary *, DOSBase, 141, Dos)
  393.  
  394. __AROS_LP2(BOOL, MatchPatternNoCase,
  395.     __AROS_LPA(STRPTR, pat, D1),
  396.     __AROS_LPA(STRPTR, str, D2),
  397.     struct DosLibrary *, DOSBase, 162, Dos)
  398. #define MatchPatternNoCase(pat, str) \
  399.     __AROS_LC2(BOOL, MatchPatternNoCase, \
  400.     __AROS_LCA(STRPTR, pat, D1), \
  401.     __AROS_LCA(STRPTR, str, D2), \
  402.     struct DosLibrary *, DOSBase, 162, Dos)
  403.  
  404. __AROS_LP0(BPTR, MaxCli,
  405.     struct DosLibrary *, DOSBase, 92, Dos)
  406. #define MaxCli() \
  407.     __AROS_LC0(BPTR, MaxCli, \
  408.     struct DosLibrary *, DOSBase, 92, Dos)
  409.  
  410. __AROS_LP3(BOOL, NameFromLock,
  411.     __AROS_LPA(BPTR,   lock,   D1),
  412.     __AROS_LPA(STRPTR, buffer, D2),
  413.     __AROS_LPA(LONG,   length, D3),
  414.     struct DosLibrary *, DOSBase, 67, Dos)
  415. #define NameFromLock(lock, buffer, length) \
  416.     __AROS_LC3(BOOL, NameFromLock, \
  417.     __AROS_LCA(BPTR,   lock,   D1), \
  418.     __AROS_LCA(STRPTR, buffer, D2), \
  419.     __AROS_LCA(LONG,   length, D3), \
  420.     struct DosLibrary *, DOSBase, 67, Dos)
  421.  
  422. __AROS_LP3(LONG, NameFromFH,
  423.     __AROS_LPA(BPTR  , fh, D1),
  424.     __AROS_LPA(STRPTR, buffer, D2),
  425.     __AROS_LPA(long  , len, D3),
  426.     struct DosLibrary *, DOSBase, 68, Dos)
  427. #define NameFromFH(fh, buffer, len) \
  428.     __AROS_LC3(LONG, NameFromFH, \
  429.     __AROS_LCA(BPTR  , fh, D1), \
  430.     __AROS_LCA(STRPTR, buffer, D2), \
  431.     __AROS_LCA(long  , len, D3), \
  432.     struct DosLibrary *, DOSBase, 68, Dos)
  433.  
  434. __AROS_LP2(BPTR, Open,
  435.     __AROS_LPA(STRPTR, name,       D1),
  436.     __AROS_LPA(LONG,   accessMode, D2),
  437.     struct DosLibrary *, DOSBase, 5, Dos)
  438. #define Open(name, accessMode) \
  439.     __AROS_LC2(BPTR, Open, \
  440.     __AROS_LCA(STRPTR, name,       D1), \
  441.     __AROS_LCA(LONG,   accessMode, D2), \
  442.     struct DosLibrary *, DOSBase, 5, Dos)
  443.  
  444. __AROS_LP1(BPTR, OpenFromLock,
  445.     __AROS_LPA(BPTR, lock, D1),
  446.     struct DosLibrary *, DOSBase, 63, Dos)
  447. #define OpenFromLock(lock) \
  448.     __AROS_LC1(BPTR, OpenFromLock, \
  449.     __AROS_LCA(BPTR, lock, D1), \
  450.     struct DosLibrary *, DOSBase, 63, Dos)
  451.  
  452. __AROS_LP0(BPTR, Output,
  453.     struct DosLibrary *, DOSBase, 10, Dos)
  454. #define Output() \
  455.     __AROS_LC0(BPTR, Output, \
  456.     struct DosLibrary *, DOSBase, 10, Dos)
  457.  
  458. __AROS_LP3(LONG, ParsePattern,
  459.     __AROS_LPA(STRPTR, Source,      D1),
  460.     __AROS_LPA(STRPTR, Dest,        D2),
  461.     __AROS_LPA(LONG,   DestLength,  D3),
  462.     struct DosLibrary *, DOSBase, 140, Dos)
  463. #define ParsePattern(Source, Dest, DestLength) \
  464.     __AROS_LC3(LONG, ParsePattern, \
  465.     __AROS_LCA(STRPTR, Source,      D1), \
  466.     __AROS_LCA(STRPTR, Dest,        D2), \
  467.     __AROS_LCA(LONG,   DestLength,  D3), \
  468.     struct DosLibrary *, DOSBase, 140, Dos)
  469.  
  470. __AROS_LP3(LONG, ParsePatternNoCase,
  471.     __AROS_LPA(STRPTR, Source,      D1),
  472.     __AROS_LPA(STRPTR, Dest,        D2),
  473.     __AROS_LPA(LONG,   DestLength,  D3),
  474.     struct DosLibrary *, DOSBase, 161, Dos)
  475. #define ParsePatternNoCase(Source, Dest, DestLength) \
  476.     __AROS_LC3(LONG, ParsePatternNoCase, \
  477.     __AROS_LCA(STRPTR, Source,      D1), \
  478.     __AROS_LCA(STRPTR, Dest,        D2), \
  479.     __AROS_LCA(LONG,   DestLength,  D3), \
  480.     struct DosLibrary *, DOSBase, 161, Dos)
  481.  
  482. __AROS_LP2(BOOL, PrintFault,
  483.     __AROS_LPA(LONG,   code,   D1),
  484.     __AROS_LPA(STRPTR, header, D2),
  485.     struct DosLibrary *, DOSBase, 79, Dos)
  486. #define PrintFault(code, header) \
  487.     __AROS_LC2(BOOL, PrintFault, \
  488.     __AROS_LCA(LONG,   code,   D1), \
  489.     __AROS_LCA(STRPTR, header, D2), \
  490.     struct DosLibrary *, DOSBase, 79, Dos)
  491.  
  492. __AROS_LP1(LONG, PutStr,
  493.     __AROS_LPA(STRPTR, string, D1),
  494.     struct DosLibrary *, DOSBase, 158, Dos)
  495. #define PutStr(string) \
  496.     __AROS_LC1(LONG, PutStr, \
  497.     __AROS_LCA(STRPTR, string, D1), \
  498.     struct DosLibrary *, DOSBase, 158, Dos)
  499.  
  500. __AROS_LP3(LONG, Read,
  501.     __AROS_LPA(BPTR, file,   D1),
  502.     __AROS_LPA(APTR, buffer, D2),
  503.     __AROS_LPA(LONG, length, D3),
  504.     struct DosLibrary *, DOSBase, 7, Dos)
  505. #define Read(file, buffer, length) \
  506.     __AROS_LC3(LONG, Read, \
  507.     __AROS_LCA(BPTR, file,   D1), \
  508.     __AROS_LCA(APTR, buffer, D2), \
  509.     __AROS_LCA(LONG, length, D3), \
  510.     struct DosLibrary *, DOSBase, 7, Dos)
  511.  
  512. __AROS_LP3(struct RDArgs *, ReadArgs,
  513.     __AROS_LPA(STRPTR,          template, D1),
  514.     __AROS_LPA(LONG *,          array,    D2),
  515.     __AROS_LPA(struct RDArgs *, rdargs,   D3),
  516.     struct DosLibrary *, DOSBase, 133, Dos)
  517. #define ReadArgs(template, array, rdargs) \
  518.     __AROS_LC3(struct RDArgs *, ReadArgs, \
  519.     __AROS_LCA(STRPTR,          template, D1), \
  520.     __AROS_LCA(LONG *,          array,    D2), \
  521.     __AROS_LCA(struct RDArgs *, rdargs,   D3), \
  522.     struct DosLibrary *, DOSBase, 133, Dos)
  523.  
  524. __AROS_LP3(LONG, ReadItem,
  525.     __AROS_LPA(STRPTR,           buffer,   D1),
  526.     __AROS_LPA(LONG,             maxchars, D2),
  527.     __AROS_LPA(struct CSource *, input,    D3),
  528.     struct DosLibrary *, DOSBase, 135, Dos)
  529. #define ReadItem(buffer, maxchars, input) \
  530.     __AROS_LC3(LONG, ReadItem, \
  531.     __AROS_LCA(STRPTR,           buffer,   D1), \
  532.     __AROS_LCA(LONG,             maxchars, D2), \
  533.     __AROS_LCA(struct CSource *, input,    D3), \
  534.     struct DosLibrary *, DOSBase, 135, Dos)
  535.  
  536. __AROS_LP1(LONG, RemDosEntry,
  537.     __AROS_LPA(struct DosList *, dlist, D1),
  538.     struct DosLibrary *, DOSBase, 112, Dos)
  539. #define RemDosEntry(dlist) \
  540.     __AROS_LC1(LONG, RemDosEntry, \
  541.     __AROS_LCA(struct DosList *, dlist, D1), \
  542.     struct DosLibrary *, DOSBase, 112, Dos)
  543.  
  544. __AROS_LP4(LONG, RunCommand,
  545.     __AROS_LPA(BPTR,   segList,   D1),
  546.     __AROS_LPA(ULONG,  stacksize, D2),
  547.     __AROS_LPA(STRPTR, argptr,    D3),
  548.     __AROS_LPA(ULONG,  argsize,   D4),
  549.     struct DosLibrary *, DOSBase, 84, Dos)
  550. #define RunCommand(segList, stacksize, argptr, argsize) \
  551.     __AROS_LC4(LONG, RunCommand, \
  552.     __AROS_LCA(BPTR,   segList,   D1), \
  553.     __AROS_LCA(ULONG,  stacksize, D2), \
  554.     __AROS_LCA(STRPTR, argptr,    D3), \
  555.     __AROS_LCA(ULONG,  argsize,   D4), \
  556.     struct DosLibrary *, DOSBase, 84, Dos)
  557.  
  558. __AROS_LP3(LONG, Seek,
  559.     __AROS_LPA(BPTR, file,     D1),
  560.     __AROS_LPA(LONG, position, D2),
  561.     __AROS_LPA(LONG, mode,     D3),
  562.     struct DosLibrary *, DOSBase, 11, Dos)
  563. #define Seek(file, position, mode) \
  564.     __AROS_LC3(LONG, Seek, \
  565.     __AROS_LCA(BPTR, file,     D1), \
  566.     __AROS_LCA(LONG, position, D2), \
  567.     __AROS_LCA(LONG, mode,     D3), \
  568.     struct DosLibrary *, DOSBase, 11, Dos)
  569.  
  570. __AROS_LP1(BPTR, SelectInput,
  571.     __AROS_LPA(BPTR, fh, D1),
  572.     struct DosLibrary *, DOSBase, 49, Dos)
  573. #define SelectInput(fh) \
  574.     __AROS_LC1(BPTR, SelectInput, \
  575.     __AROS_LCA(BPTR, fh, D1), \
  576.     struct DosLibrary *, DOSBase, 49, Dos)
  577.  
  578. __AROS_LP1(BPTR, SelectOutput,
  579.     __AROS_LPA(BPTR, fh, D1),
  580.     struct DosLibrary *, DOSBase, 50, Dos)
  581. #define SelectOutput(fh) \
  582.     __AROS_LC1(BPTR, SelectOutput, \
  583.     __AROS_LCA(BPTR, fh, D1), \
  584.     struct DosLibrary *, DOSBase, 50, Dos)
  585.  
  586. __AROS_LP2(BOOL, SetComment,
  587.     __AROS_LPA(STRPTR, name,    D1),
  588.     __AROS_LPA(STRPTR, comment, D2),
  589.     struct DosLibrary *, DOSBase, 30, Dos)
  590. #define SetComment(name, comment) \
  591.     __AROS_LC2(BOOL, SetComment, \
  592.     __AROS_LCA(STRPTR, name,    D1), \
  593.     __AROS_LCA(STRPTR, comment, D2), \
  594.     struct DosLibrary *, DOSBase, 30, Dos)
  595.  
  596. __AROS_LP2(BOOL, SetFileDate,
  597.     __AROS_LPA(STRPTR,             name, D1),
  598.     __AROS_LPA(struct DateStamp *, date, D2),
  599.     struct DosLibrary *, DOSBase, 66, Dos)
  600. #define SetFileDate(name, date) \
  601.     __AROS_LC2(BOOL, SetFileDate, \
  602.     __AROS_LCA(STRPTR,             name, D1), \
  603.     __AROS_LCA(struct DateStamp *, date, D2), \
  604.     struct DosLibrary *, DOSBase, 66, Dos)
  605.  
  606. __AROS_LP3(LONG, SetFileSize,
  607.     __AROS_LPA(BPTR, file,   D1),
  608.     __AROS_LPA(LONG, offset, D2),
  609.     __AROS_LPA(LONG, mode,   D3),
  610.     struct DosLibrary *, DOSBase, 76, Dos)
  611. #define SetFileSize(file, offset, mode) \
  612.     __AROS_LC3(LONG, SetFileSize, \
  613.     __AROS_LCA(BPTR, file,   D1), \
  614.     __AROS_LCA(LONG, offset, D2), \
  615.     __AROS_LCA(LONG, mode,   D3), \
  616.     struct DosLibrary *, DOSBase, 76, Dos)
  617.  
  618. __AROS_LP1(LONG, SetIoErr,
  619.     __AROS_LPA(LONG, result, D1),
  620.     struct DosLibrary *, DOSBase, 77, Dos)
  621. #define SetIoErr(result) \
  622.     __AROS_LC1(LONG, SetIoErr, \
  623.     __AROS_LCA(LONG, result, D1), \
  624.     struct DosLibrary *, DOSBase, 77, Dos)
  625.  
  626. __AROS_LP2(BOOL, SetOwner,
  627.     __AROS_LPA(STRPTR, name,       D1),
  628.     __AROS_LPA(ULONG,  owner_info, D2),
  629.     struct DosLibrary *, DOSBase, 166, Dos)
  630. #define SetOwner(name, owner_info) \
  631.     __AROS_LC2(BOOL, SetOwner, \
  632.     __AROS_LCA(STRPTR, name,       D1), \
  633.     __AROS_LCA(ULONG,  owner_info, D2), \
  634.     struct DosLibrary *, DOSBase, 166, Dos)
  635.  
  636. __AROS_LP2(BOOL, SetProtection,
  637.     __AROS_LPA(STRPTR, name,    D1),
  638.     __AROS_LPA(ULONG,  protect, D2),
  639.     struct DosLibrary *, DOSBase, 31, Dos)
  640. #define SetProtection(name, protect) \
  641.     __AROS_LC2(BOOL, SetProtection, \
  642.     __AROS_LCA(STRPTR, name,    D1), \
  643.     __AROS_LCA(ULONG,  protect, D2), \
  644.     struct DosLibrary *, DOSBase, 31, Dos)
  645.  
  646. __AROS_LP2I(LONG, StrToLong,
  647.     __AROS_LPA(STRPTR, string, D1),
  648.     __AROS_LPA(LONG *, value,  D2),
  649.     struct DosLibrary *, DOSBase, 136, Dos)
  650. #define StrToLong(string, value) \
  651.     __AROS_LC2I(LONG, StrToLong, \
  652.     __AROS_LCA(STRPTR, string, D1), \
  653.     __AROS_LCA(LONG *, value,  D2), \
  654.     struct DosLibrary *, DOSBase, 136, Dos)
  655.  
  656. __AROS_LP2(LONG, UnGetC,
  657.     __AROS_LPA(BPTR, file,      D1),
  658.     __AROS_LPA(LONG, character, D2),
  659.     struct DosLibrary *, DOSBase, 53, Dos)
  660. #define UnGetC(file, character) \
  661.     __AROS_LC2(LONG, UnGetC, \
  662.     __AROS_LCA(BPTR, file,      D1), \
  663.     __AROS_LCA(LONG, character, D2), \
  664.     struct DosLibrary *, DOSBase, 53, Dos)
  665.  
  666. __AROS_LP1(void, UnLoadSeg,
  667.     __AROS_LPA(BPTR, seglist, D1),
  668.     struct DosLibrary *, DOSBase, 26, Dos)
  669. #define UnLoadSeg(seglist) \
  670.     __AROS_LC1(void, UnLoadSeg, \
  671.     __AROS_LCA(BPTR, seglist, D1), \
  672.     struct DosLibrary *, DOSBase, 26, Dos)
  673.  
  674. __AROS_LP1(void, UnLockDosList,
  675.     __AROS_LPA(ULONG, flags, D1),
  676.     struct DosLibrary *, DOSBase, 110, Dos)
  677. #define UnLockDosList(flags) \
  678.     __AROS_LC1(void, UnLockDosList, \
  679.     __AROS_LCA(ULONG, flags, D1), \
  680.     struct DosLibrary *, DOSBase, 110, Dos)
  681.  
  682. __AROS_LP3(LONG, VFPrintf,
  683.     __AROS_LPA(BPTR,   file,     D1),
  684.     __AROS_LPA(STRPTR, format,   D2),
  685.     __AROS_LPA(LONG *, argarray, D3),
  686.     struct DosLibrary *, DOSBase, 59, Dos)
  687. #define VFPrintf(file, format, argarray) \
  688.     __AROS_LC3(LONG, VFPrintf, \
  689.     __AROS_LCA(BPTR,   file,     D1), \
  690.     __AROS_LCA(STRPTR, format,   D2), \
  691.     __AROS_LCA(LONG *, argarray, D3), \
  692.     struct DosLibrary *, DOSBase, 59, Dos)
  693.  
  694. __AROS_LP2(LONG, VPrintf,
  695.     __AROS_LPA(STRPTR, format,   D1),
  696.     __AROS_LPA(LONG *, argarray, D2),
  697.     struct DosLibrary *, DOSBase, 159, Dos)
  698. #define VPrintf(format, argarray) \
  699.     __AROS_LC2(LONG, VPrintf, \
  700.     __AROS_LCA(STRPTR, format,   D1), \
  701.     __AROS_LCA(LONG *, argarray, D2), \
  702.     struct DosLibrary *, DOSBase, 159, Dos)
  703.  
  704. __AROS_LP3(LONG, Write,
  705.     __AROS_LPA(BPTR, file,   D1),
  706.     __AROS_LPA(APTR, buffer, D2),
  707.     __AROS_LPA(LONG, length, D3),
  708.     struct DosLibrary *, DOSBase, 8, Dos)
  709. #define Write(file, buffer, length) \
  710.     __AROS_LC3(LONG, Write, \
  711.     __AROS_LCA(BPTR, file,   D1), \
  712.     __AROS_LCA(APTR, buffer, D2), \
  713.     __AROS_LCA(LONG, length, D3), \
  714.     struct DosLibrary *, DOSBase, 8, Dos)
  715.  
  716.  
  717. #endif /* CLIB_DOS_PROTOS_H */
  718.